package com.yidu.BusinessParameters.entity;

/**
 * 交易数据
 * @author zhouhongyu
 * @since 2022/8/25
 * @version 1.0
 */
public class Trade {
    private String tradeId;//交易id --
    private String fundId;//基金编号（外键）--
    private String securityId;//证券编号(外键) --
    private String securityName;//证券名称
    private String cashId;//现金ID（外键） --
    private String accounName;//现金账户
    private String brokerId;//券商编号（外键）--
    private String brokerName;//券商名称
    private String seatId;//席位Id(外键) --
    private String seatName;//席位名称
    private double tradePrice;//交易单价 --
    private int tradeType;//交易类型（1买入、2卖出、3分红、4送股） --
    private int tradeNum;//交易数量 --
    private String tradeDate;//成交日期 --
    private String settleDate;//结算日期 --
    private double tradeMoney;//交易金额 --
    private double settleMoney;//结算金额 --
    private double boodInterest;//证券利息 --
    private double stampDuty;//印花税 --
    private double transferFee;//过户费 --
    private double collectionFee;//征管费 --
    private double handlingFee;//经手费 --
    private double fees;//佣金费用 --
    private int settleState=2;//结算状态（1已结算、2未结算） --

    /**
     * 无参构造
     */
    public Trade(){}

    /**
     * 有参数构造方法
     * @param tradeId
     * @param fundId
     * @param securityId
     * @param cashId
     * @param brokerId
     * @param seatId
     * @param tradePrice
     * @param tradeType
     * @param tradeNum
     * @param tradeDate
     * @param settleDate
     * @param tradeMoney
     * @param settleMoney
     * @param boodInterest
     * @param stampDuty
     * @param transferFee
     * @param collectionFee
     * @param handlingFee
     * @param fees
     * @param settleState
     */
    public Trade(String tradeId, String fundId, String securityId, String cashId, String brokerId, String seatId, double tradePrice, int tradeType, int tradeNum, String tradeDate, String settleDate, double tradeMoney, double settleMoney, double boodInterest, double stampDuty, double transferFee, double collectionFee, double handlingFee, double fees, int settleState) {
        this.tradeId = tradeId;
        this.fundId = fundId;
        this.securityId = securityId;
        this.cashId = cashId;
        this.brokerId = brokerId;
        this.seatId = seatId;
        this.tradePrice = tradePrice;
        this.tradeType = tradeType;
        this.tradeNum = tradeNum;
        this.tradeDate = tradeDate;
        this.settleDate = settleDate;
        this.tradeMoney = tradeMoney;
        this.settleMoney = settleMoney;
        this.boodInterest = boodInterest;
        this.stampDuty = stampDuty;
        this.transferFee = transferFee;
        this.collectionFee = collectionFee;
        this.handlingFee = handlingFee;
        this.fees = fees;
        this.settleState = settleState;
    }

    public Trade(String tradeId, String fundId, String securityId, String securityName, String cashId, String accounName, String brokerId, String brokerName, String seatId, String seatName, double tradePrice, int tradeType, int tradeNum, String tradeDate, String settleDate, double tradeMoney, double settleMoney, double boodInterest, double stampDuty, double transferFee, double collectionFee, double handlingFee, double fees, int settleState) {
        this.tradeId = tradeId;
        this.fundId = fundId;
        this.securityId = securityId;
        this.securityName = securityName;
        this.cashId = cashId;
        this.accounName = accounName;
        this.brokerId = brokerId;
        this.brokerName = brokerName;
        this.seatId = seatId;
        this.seatName = seatName;
        this.tradePrice = tradePrice;
        this.tradeType = tradeType;
        this.tradeNum = tradeNum;
        this.tradeDate = tradeDate;
        this.settleDate = settleDate;
        this.tradeMoney = tradeMoney;
        this.settleMoney = settleMoney;
        this.boodInterest = boodInterest;
        this.stampDuty = stampDuty;
        this.transferFee = transferFee;
        this.collectionFee = collectionFee;
        this.handlingFee = handlingFee;
        this.fees = fees;
        this.settleState = settleState;
    }

    @Override
    public String toString() {
        return "Trade{" +
                "tradeId='" + tradeId + '\'' +
                ", fundId='" + fundId + '\'' +
                ", securityId='" + securityId + '\'' +
                ", securityName='" + securityName + '\'' +
                ", cashId='" + cashId + '\'' +
                ", accounName='" + accounName + '\'' +
                ", brokerId='" + brokerId + '\'' +
                ", brokerName='" + brokerName + '\'' +
                ", seatId='" + seatId + '\'' +
                ", seatName='" + seatName + '\'' +
                ", tradePrice=" + tradePrice +
                ", tradeType=" + tradeType +
                ", tradeNum=" + tradeNum +
                ", tradeDate='" + tradeDate + '\'' +
                ", settleDate='" + settleDate + '\'' +
                ", tradeMoney=" + tradeMoney +
                ", settleMoney=" + settleMoney +
                ", boodInterest=" + boodInterest +
                ", stampDuty=" + stampDuty +
                ", transferFee=" + transferFee +
                ", collectionFee=" + collectionFee +
                ", handlingFee=" + handlingFee +
                ", fees=" + fees +
                ", settleState=" + settleState +
                '}';
    }
    //自动生成setter/getter构造函数方法
    public String getTradeId() {
        return tradeId;
    }

    public void setTradeId(String tradeId) {
        this.tradeId = tradeId;
    }

    public String getFundId() {
        return fundId;
    }

    public void setFundId(String fundId) {
        this.fundId = fundId;
    }

    public String getSecurityId() {
        return securityId;
    }

    public void setSecurityId(String securityId) {
        this.securityId = securityId;
    }

    public String getSecurityName() {
        return securityName;
    }

    public void setSecurityName(String securityName) {
        this.securityName = securityName;
    }

    public String getCashId() {
        return cashId;
    }

    public void setCashId(String cashId) {
        this.cashId = cashId;
    }

    public String getAccounName() {
        return accounName;
    }

    public void setAccounName(String accounName) {
        this.accounName = accounName;
    }

    public String getBrokerId() {
        return brokerId;
    }

    public void setBrokerId(String brokerId) {
        this.brokerId = brokerId;
    }

    public String getBrokerName() {
        return brokerName;
    }

    public void setBrokerName(String brokerName) {
        this.brokerName = brokerName;
    }

    public String getSeatId() {
        return seatId;
    }

    public void setSeatId(String seatId) {
        this.seatId = seatId;
    }

    public String getSeatName() {
        return seatName;
    }

    public void setSeatName(String seatName) {
        this.seatName = seatName;
    }

    public double getTradePrice() {
        return tradePrice;
    }

    public void setTradePrice(double tradePrice) {
        this.tradePrice = tradePrice;
    }

    public int getTradeType() {
        return tradeType;
    }

    public void setTradeType(int tradeType) {
        this.tradeType = tradeType;
    }

    public int getTradeNum() {
        return tradeNum;
    }

    public void setTradeNum(int tradeNum) {
        this.tradeNum = tradeNum;
    }

    public String getTradeDate() {
        return tradeDate;
    }

    public void setTradeDate(String tradeDate) {
        this.tradeDate = tradeDate;
    }

    public String getSettleDate() {
        return settleDate;
    }

    public void setSettleDate(String settleDate) {
        this.settleDate = settleDate;
    }

    public double getTradeMoney() {
        return tradeMoney;
    }

    public void setTradeMoney(double tradeMoney) {
        this.tradeMoney = tradeMoney;
    }

    public double getSettleMoney() {
        return settleMoney;
    }

    public void setSettleMoney(double settleMoney) {
        this.settleMoney = settleMoney;
    }

    public double getBoodInterest() {
        return boodInterest;
    }

    public void setBoodInterest(double boodInterest) {
        this.boodInterest = boodInterest;
    }

    public double getStampDuty() {
        return stampDuty;
    }

    public void setStampDuty(double stampDuty) {
        this.stampDuty = stampDuty;
    }

    public double getTransferFee() {
        return transferFee;
    }

    public void setTransferFee(double transferFee) {
        this.transferFee = transferFee;
    }

    public double getCollectionFee() {
        return collectionFee;
    }

    public void setCollectionFee(double collectionFee) {
        this.collectionFee = collectionFee;
    }

    public double getHandlingFee() {
        return handlingFee;
    }

    public void setHandlingFee(double handlingFee) {
        this.handlingFee = handlingFee;
    }

    public double getFees() {
        return fees;
    }

    public void setFees(double fees) {
        this.fees = fees;
    }

    public int getSettleState() {
        return settleState;
    }

    public void setSettleState(int settleState) {
        this.settleState = settleState;
    }
}
